package com.team.base.common.export;

import com.alibaba.excel.converters.Converter;
import com.alibaba.excel.converters.ReadConverterContext;
import com.alibaba.excel.converters.WriteConverterContext;
import com.alibaba.excel.enums.CellDataTypeEnum;
import com.alibaba.excel.metadata.data.WriteCellData;

import cn.hutool.core.util.StrUtil;

/**
 * 项目名称: base
 * 类名称: ExcleConverter
 *
 * 创建人: yyq
 * 创建时间: 2023年4月11日下午9:47:14
 */
public class ExclePayTypeConverter implements Converter<String> {
    @Override
    public Class<?> supportJavaTypeKey() {
        //对象属性类型
        return Integer.class;
    }
 
    @Override
    public CellDataTypeEnum supportExcelTypeKey() {
        //CellData属性类型
        return CellDataTypeEnum.STRING;
    }
 
    @Override
    public String convertToJavaData(ReadConverterContext<?> context) throws Exception {
        //CellData转对象属性
        String cellStr = context.getReadCellData().getStringValue();
        if (StrUtil.isEmpty(cellStr)) return null;
        if ("微信".equals(cellStr)) {
        	return "0";
        } else if ("支付宝".equals(cellStr)) {
        	return "1";
        } else {
        	return null;
        }
    }
 
    @Override
    public WriteCellData<?> convertToExcelData(WriteConverterContext<String> context) throws Exception {
        //对象属性转CellData
        String cellValue = context.getValue();
        if (cellValue == null) {
            return new WriteCellData<>("");
        }
        if (cellValue.equals("0")) {
            return new WriteCellData<>("微信");
        } else if (cellValue.equals("1")) {
            return new WriteCellData<>("支付宝");
        } else {
            return new WriteCellData<>("");
        }
    }
}

